package com.lin.controller.req;

import lombok.Getter;
import lombok.Setter;

import javax.validation.constraints.DecimalMin;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

@Getter
@Setter
public class OrderPayReqMsg<T> {
    /**
     * 商品信息
     */
    private T t;

    @NotBlank(message = "用户标识不能为空")
    private String openid;

    //如果生成订单了，需要传入，则商品信息不需要再传了
    private Long orderNo;

    @NotNull(message = "客户号不能为空")
    private Long customerId;


    /**
     * WX_MICRO：微信被扫
     * WX_UNIFIED：微信主扫
     * ALI_UNIFIED 支付宝主扫
     * PAYPAL_UNIFIED  paypal主扫
     */
    //private String payType;

    /**
     * WEIXIN：微信；
     * ALI：支付宝；
     * PAYPAL ：PAYPAL；
     */
    private String tradChnl;

    private String body;

    @NotNull(message = "交易金额不为空")
    @DecimalMin("0")
    private BigDecimal trxAmt;

    /**
     * 不填写默认则是人命币CNY
     * 一般使用美元 USD
     */
    private String currency;

    private String remark;

}
